Management of different types of resources (such as software components, applications or devices) is a critical issue in a data processing system with a distributed architecture. This problem is particular acute when the system includes a high number of logical and/or physical entities (referred to as subjects), each one controlling different resources; the problem is further exacerbated if the subjects have a high level of complexity or are dispersed across a large number of installations.
The management environments known in that art are typically based on an enforcement model (also known as manager/workers model). In this model, the process is entirely controlled by an authority residing at a central site of the system. The authority defines a desired configuration of every subject. For this purpose, the authority accesses a central repository storing the (alleged) current configuration of each subject, and determines the management actions required to bring the subject to the desired configuration starting from its current configuration. The management actions are then enforced remotely by the authority on the subject (which is totally passive).
A different approach is proposed in WO-A-2004/017201; this document discloses an autonomic management system, wherein each subject self-adapts to the corresponding desired configuration. For this purpose, the authority publishes a set of rules into a shared repository; each rule specifies the desired configuration for a category of subjects. Each subject retrieves and applies the rules corresponding to its category directly. In this way, the subjects are no longer passive entities but they actively participate in the configuration process. As a consequence, it is possible to avoid inconsistencies and support subjects that are not available or off-line. In the above-described solution the control of the environment is fully automated and delegated to the subjects (with a system administrator that is required to intervene only when a malfunctioning occurs or when some subjects are unable to comply with the corresponding rules).
The categories are defined according to different attributes (or keys), which are representative of corresponding logical/physical characteristics of the subjects. Each attribute is evaluated by a respective scanner; therefore, the above-described solution requires that the scanners for evaluating the attributes specified in the rules should be installed on every subject.
For this purpose, the scanners may be deployed to all the subjects or they may be pre-installed on each new subject that is added to the system.
However, this approach impairs the proposed self-adaptive model.
In addition, the massive installation of the scanners on all the subjects is very ineffective, and can cause a serious degradation of the performance of the system. This drawback is particular acute in large systems with a heterogeneous structure, wherein the categories are defined by a high number of attributes.